/*******************************************************************************
 * Copyright (c) 2011 TXT e-solutions SpA
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * This work was performed within the IoT_at_Work Project
 * and partially funded by the European Commission's
 * 7th Framework Programme under the research area ICT-2009.1.3
 * Internet of Things and enterprise environments.
 *
 *
 * Authors:
 *     Cristoforo Seccia (TXT e-solutions SpA)
 *
 * Contributors:
 *      Domenico Rotondi (TXT e-solutions SpA)
 *******************************************************************************/
package it.txt.access.capability.commons.utils;

/**
 *
 * @author Cristoforo Seccia (TXT e-solutions SpA)
 */
public class MessageUtils {

    private static final String WARNING_REPORT = "WARNING";

    private static final String ERROR_REPORT = "ERROR";

    private static final String INFO_REPORT = "INFO";

    private static final String NEW_LINE = "\n";

    /**
     * @param fieldName The header of the message
     * @param fieldValue The content of the message. Can be null.
     */
    public static String getInfoMessage(String fieldName, String fieldValue) {
        StringBuilder builder = new StringBuilder();
        builder.append(NEW_LINE);
        builder.append(" =").append(INFO_REPORT).append(" REPORT====");
        builder.append(NEW_LINE);
        if (fieldValue != null) {
            builder.append(" [").append(fieldName).append("]: ");
            builder.append(fieldValue);
        } else {
            builder.append(" [").append(fieldName).append("]");
        }
        return builder.toString();
    }

    /**
     * @param fieldName The header of the message
     * @param fieldValue The content of the message. Can be null.
     */
    public static String getWarningMessage(String fieldName, String fieldValue) {
        StringBuilder builder = new StringBuilder();
        builder.append(NEW_LINE);
        builder.append(" =").append(WARNING_REPORT).append(" REPORT====");
        builder.append(NEW_LINE);
        if (fieldValue != null) {
            builder.append(" [").append(fieldName).append("]: ");
            builder.append(fieldValue);
        } else {
            builder.append(" [").append(fieldName).append("]");
        }
        return builder.toString();
    }

    /**
     * @param fieldName The header of the message
     * @param fieldValue The content of the message. Can be null.
     */
    public static String getErrorMessage(String fieldName, String fieldValue) {
        StringBuilder builder = new StringBuilder();
        builder.append(NEW_LINE);
        builder.append(" =").append(ERROR_REPORT).append(" REPORT====");
        builder.append(NEW_LINE);
        if (fieldValue != null) {
            builder.append(" [").append(fieldName).append("]: ");
            builder.append(fieldValue);
        } else {
            builder.append(" [").append(fieldName).append("]");
        }
        return builder.toString();
    }
}
